Release 10.1A: OpenEdge Getting Started:
Application and Integration Services
When to use a Web service
Some programmers familiar with other distributed application environments, such as traditional client/server and other n-tier architectures, might initially think Web services unnecessarily complicated for their needs. Others might find Web services simpler to work with than what they are used to, but less efficient at run time because the content communicated between Web services and their consumers is text-based (HTTP and XML). The main advantages already noted (see the "Earlier attempts to standardize interoperability" section) include the reliance on widely available (ubiquitous) standards that are already in place for other uses (HTTP/S and XML). Added to this is the relative simplicity (compared to CORBA, for example) of supplemental standards, like SOAP and WSDL, needed to complete the general toolset required for implementation.
Flexibility and integration
The ubiquity of these standards supports application distribution and integration on a wide scale, from local client/server to global n-tier, with minimal additional work on infrastructure to increase the scale. In addition, the application language and execution environment of a Web service is often completely different from the environment of the client application that is using it. Thus, while execution for some Web service applications might be less efficient in real time than an equivalent proprietary solution, the proprietary solution is likely to be far less flexible and interoperable than the Web service solution. Thus, where development time and flexibility is more critical than computational performance, Web services can offer greater efficiency and economy overall. On the other hand, a Web service might also represent the highest performance option available, especially where no proprietary solution currently exists.
Note: The least appropriate application for a Web service is one that depends on maximum data throughput over the wire in a given period of time or one that exists in a homogenous environment behind the firewall.Web service flexibility also facilitates the automation and integration of processes between various business partners, such as manufacturers, suppliers, and banks. Once a business relationship exists among these partners, the external integration of their applications using Web services can actually increase the efficiency (that is, performance) of complex business processes, regardless of the performance of the individual partner applications.
Adaptability and longevity
Web service technologies focus on standards for how a client application talks to a server application, instead of how and with what tools the client or server application are built. That is, Web services separate the application logic and business function from the means of application communication and interoperability, much as the application user interface is now commonly separated from its business logic. Thus, Web services can provide a means to extend the life of legacy applications that have served well for one domain, making them potentially serviceable for many new and different domains. For example, a local-weather-reporting application that has served a single community might now become part of a global weather-reporting system by adapting it as a Web service. At the same time, the function and scope of the application in its original operating environment can often remain unchanged.
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |